﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
using StyleMVVM.Data;

#if NETFX_CORE
using Windows.ApplicationModel.Resources;

#endif

namespace StyleMVVM.Validation.Impl.Fluent
{
	public class FluentPropertyValueProvider<T> : IFluentPropertyValueProvider<T>
	{
		private readonly string propertyName;

		public FluentPropertyValueProvider(string propertyName)
		{
			this.propertyName = propertyName;
		}

		public string PropertyName
		{
			get { return propertyName; }
		}

		public Expression GenerateExpression(IFluentExpressionProvider propertyExpressionProvider)
		{
			return propertyExpressionProvider.GetPropertyExpression(propertyName);
		}

		public string GenerateDisplayString(ResourceLoader loader)
		{
			return propertyName;
		}
	}
}